package com.itheima.throwable;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

/*
1. 如果 try 中没有遇到问题，怎么执行？ABD
try中所有代码正常执行 catch 不执行 后续代码正常执行
2. 如果 try 中遇到了问题，那么 try 下面的代码还会执行吗？ACD
异常前正常执行 异常后 不执行  catch 执行  后续代码正常执行

3. 如果出现的问题没有被捕获，那么程序如何运行？A 报错终止程序
异常前正常执行  异常后因为没有捕获 对异常的处理没用 所以 jvm介入 处理
4. 同时有可能出现多个异常怎么处理？
可以写多个catch来处理
如果多个catch 有父子关系  先写 子类异常 再写父类异常(多态)
 */
public class Demo06 {

    public static void main(String[] args) {

        //声明一个异常  (自己不处理 让调用者处理)
       // SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日");
        SimpleDateFormat sdf=null;
        Date date = null;
        try {
           /// int  i=1/0;
            System.out.println("A");
            date = sdf.parse("1999年1-1日");
            System.out.println("B");
        } catch (ParseException e) {
            System.out.println("C");
        } catch (NullPointerException e) {
            System.out.println("这里空指针了");
        }catch (RuntimeException e) {
            System.out.println("这里运行时");
        }
        System.out.println("D");
        System.out.println(date);




    }
}
